const app = getApp()
import { HiddenCall } from '../../request/api.js'
const request = new HiddenCall

Page({
  /**
   * 页面的初始数据
   */
  data: {
    //修改小区名称多列选择器的值
    multiArray: [],
    //选中的小区
    multiIndex: [0, 0, 0],
    //行政区号
    erpDistrictCode: [],
    //片区号
    erpRegionCode: [],
    //小区号
    erpCommunityCode: [],
    //选中小区名的编号
    estateCode: ''
  },
  onLoad:function(options){
    /*
    *从房源信息页传过来的房源信息数据
    *houseNumberLook房源是否可见
    *initHouseData房源信息
    *houseCode房源编号
    */
    let data = JSON.parse(options.data)
    this.setData({
      houseNumberLook: data.houseNumberLook,
      initHouseData: data.initHouseData,
      houseCode: data.houseCode
    })
    /**
     * 获取行政区，片区，小区名
     * author 赵美阳
     * date 2019-4-9
     */
    let a= [] //临时存放行政区
    let b= [] //临时存放片区
    let c= [] //临时存放小区
    //获取行政区
    request.erpDistrict().then(res => {
      res.result.forEach((item,index)=>{
        a.push(item.describe)
        this.data.erpDistrictCode.push(item.code)
      })
      //获取片区
      return request.erpRegion(res.result[0].code)
    }).then(res=>{
      res.result.forEach((item, index) => {
        b.push(item.describe)
        this.data.erpRegionCode.push(item.code)
      })
      //获取小区
      return request.erpCommunity(res.result[0].code)
    }).then(res=>{
      res.result.forEach((item, index) => {
        c.push(item.describe)
        this.data.erpCommunityCode.push(item.code)
        this.data.multiArray.push(a,b,c)
        this.setData({
          multiArray: this.data.multiArray
        })
      })
    })
    
  },
  /**
   * 选择小区名多列选择器发生变化的
   * author 赵美阳
   * date 2019-4-9
   */
  receiveMultiSelectorColumn(e) {
    //调用请求单个列的数据
    this.singleName(e.detail.column,e.detail.value)
  },
  /**
   * 选择小区名多列选择器点击完成按钮
   * author 赵美阳
   * date 2019-4-9
   */
  receiveMultiSelectorValue (e) {
    //设置小区编号
    let index = e.detail.value[2]
    let estateCode = this.data.erpCommunityCode[index]
    this.setData({
      estateCode
    })
  },
  /**
   * 封装请求单列的数据
   * author 赵美阳
   * date 2019-04-20
   */
  singleName(column,value){
    //临时存储返回区名
    let temp = []
    if(column === 0){
      let code = this.data.erpDistrictCode[value]
      //行政区变化让片区和小区默认显示第一个
      this.setData({
        multiIndex: [value,0,0]
      })
      //请求片区
      request.erpRegion(code).then(res => { 
        this.data.erpRegionCode = []
        //把请求回来的片区名和code存起来
        res.result.forEach((item, index) => {
          temp.push(item.describe)
          this.data.erpRegionCode.push(item.code)
        })
        this.data.multiArray[1] = temp
        this.setData({
          multiArray: this.data.multiArray,
          erpRegionCode: this.data.erpRegionCode
        })
        //片区变化时默认去请求第一个片区对应的小区
        return request.erpCommunity(this.data.erpRegionCode[0])
      }).then(res=>{
        let temp1 = []
        this.data.erpCommunityCode = []
        res.result.forEach((item, index) => {
          temp1.push(item.describe)
          this.data.erpCommunityCode.push(item.code)
        })
        this.data.multiArray[2] = temp1
        this.setData({
          multiArray: this.data.multiArray,
          erpCommunityCode: this.data.erpCommunityCode
        })
      })
    } else if (column === 1){
      //片区变化让小区默认选中第一个
      this.data.multiIndex[1] = value
      this.data.multiIndex[2] = 0
      this.setData({
        multiIndex: this.data.multiIndex
      })
      
      let code = this.data.erpRegionCode[value]
      //请求小区
      request.erpCommunity(code).then(res => {
        //把当前的数据清空
        this.data.erpCommunityCode = []
        //把请求回来的数据存起来
        res.result.forEach((item, index) => {
          temp.push(item.describe)
          this.data.erpCommunityCode.push(item.code)
        })
        this.data.multiArray[2] = temp
        this.setData({
          multiArray: this.data.multiArray,
          erpCommunityCode: this.data.erpCommunityCode
        })
      })
    } else if (column === 2) {
      this.data.multiIndex[2] = value
      this.setData({
        multiIndex: this.data.multiIndex
      })
    }
  },
  /**
   * 保存修改的房源信息
   * author 赵美阳
   * date 2019-04-20
   */
  saveHouseInfo(e){
    let info = e.detail
    //设置小区code
    info.estateCode = this.data.estateCode
    //设置房源code
    info.houseCode = this.data.houseCode
    //判断是否有未填写完整的数据
    for(var key in info){
      if (info[key] == "" || info[key] == 'undefined'){
        wx.showToast({
          title: '请填写完整信息',
          icon: 'none'
        })
        return
      }
    }
    //提交修改的数据
    request.changeHouseInfo(info).then(res=>{
      
      if (res.statusCode === 1000){
        wx.redirectTo({
          url: `/pages/housenum_look/index?houseCode=${this.data.houseCode}`
        })
      }else{
        wx.showToast({
          title: res.message,
          icon: 'none'
        })
      }
    }).catch(err=>{
      wx.showToast({
        title: '保存失败请重试',
        icon: 'none'
      })
    })
  }
})